/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package br.com.saber.certificacao.beansjsf.principal;

import br.com.saber.certificacao.beansjsf.interfacebean.BeanJSFInterface;
import br.com.saber.certificacao.utils.UtilMetodos;
import java.util.ArrayList;
import java.util.List;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.annotation.PostConstruct;
import javax.annotation.PreDestroy;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.RequestScoped;
import javax.faces.context.FacesContext;

/**
 * Bean JSF exclusivo para mostrar usuários logados.
 * Seua única função é armazenar essa informação
 * Nenhum négócio é tratado no mesmo
 * AlunoInfo é utilizado para enviar informação para a tela
 * Login do aluno e hora de login
 * @author gbvbahia
 */
@ManagedBean(name = "inicioRapido")
@RequestScoped
public class InicioRapido implements BeanJSFInterface {

    private List<ImageInfo> images;

    /** Creates a new instance of AlunosLogadosManager */
    public InicioRapido() {
    }

    //====================
    // Iniciadores
    //====================
    @Override
    @PreDestroy
    public void end() {
        Logger.getLogger(this.getClass().getName()).log(Level.FINEST, "InicioRapido.end() executado!");
    }

    @Override
    @PostConstruct
    public void init() {
        insereFotos();
        Logger.getLogger(this.getClass().getName()).log(Level.FINEST, "InicioRapido.init() executado!");
    }
    //====================
    //Métodos de Negócio
    //====================

    private void insereFotos() {
        images = new ArrayList<ImageInfo>();
        for (int i = 1; i <= 6; i++) {
            images.add(new ImageInfo("pp" + i + ".png", 
                    UtilMetodos.getResourceBundle("pp" + i + ".png" + "ImgTitle", FacesContext.getCurrentInstance()), 
                    UtilMetodos.getResourceBundle("pp" + i + ".png" + "ImgAction", FacesContext.getCurrentInstance())));
        }
    }

    //====================
    //Table Actions
    //====================
    //====================
    //SelectItem
    //====================
    //=========================
    //Getters AND Setters
    //=========================
    public List<ImageInfo> getImages() {
        return images;
    }

    public void setImages(List<ImageInfo> images) {
        this.images = images;
    }
    
    public class ImageInfo{
        private String imgURL;
        private String imgTitle;
        private String imgDesc;

        public ImageInfo(String imgURL, String imgTitle, String imgDesc) {
            this.imgURL = imgURL;
            this.imgTitle = imgTitle;
            this.imgDesc = imgDesc;
        }

        public String getImgDesc() {
            return imgDesc;
        }

        public String getImgTitle() {
            return imgTitle;
        }

        public String getImgURL() {
            return imgURL;
        }
    }
}
